Supporting the Requirements Prioritization Process. A Machine Learning approach
نویسندگان
چکیده
Requirements prioritization plays a key role in the requirements engineering process, in particular with respect to critical tasks such as requirements negotiation and software release planning. This paper presents a novel framework which is based on a requirements prioritization process that interleaves human and machine activities, enabling for an accurate prioritization of requirements. Similarly to the Analytic Hierarchy Process (AHP) method, our framework adopts an elicitation process based on the acquisition of pairwise preferences. Differently from AHP, where scalability is a big issue, the framework enables a prioritization process even over a large set of requirements, thanks to the exploitation of machine learning techniques that induce requirements ranking approximations at run time, and to the use of a boolean metrics. Moreover the new approach allows to reduce the bias of a dominance hierarchy, a strategy introduced by AHP to deal with the scalability issue. The paper describes also a methodology for the experimental evaluation of the framework and discusses the results of a first set of experiments designed on a real casestudy which shows that an high accuracy in the final ranking can be obtained within a limited elicitation effort.
منابع مشابه
Supporting the Requirements Prioritization Process. a Machine Learning Approach Limited Distribution Notice Supporting the Requirements Prioritization Process. a Machine Learning Approach
Requirements prioritization plays a key role in the requirements engineering process, in particular with respect to critical tasks such as requirements negotiation and software release planning. This paper presents a novel framework which is based on a requirements prioritization process that interleaves human and machine activities, enabling for an accurate prioritization of requirements. Simi...
متن کاملSoftware Requirement Prioritization using Machine Learning
Requirement engineering plays a very important role in software development life cycle (SDLC). Generally Software projects suffer with the problem of various types and categories of requirements and are also delimited by constraints like time and budget. To deal with this type of requirement complexity, project managers need to prioritize the requirements of the proposed software effectively. T...
متن کاملDebt Collection Industry: Machine Learning Approach
Businesses are increasingly interested in how big data, artificial intelligence, machine learning, and predictive analytics can be used to increase revenue, lower costs, and improve their business processes. In this paper, we describe how we have developed a data-driven machine learning method to optimize the collection process for a debt collection agency. Precisely speaking, we create a frame...
متن کاملSupporting Distributed Collaborative Prioritization for WinWin Requirements Capture and Negotiations
One of the most common problems within a risk driven software collaborative development effort is prioritizing items such as requirements, goals, and stakeholder win-conditions. Requirements have proven particularly sticky in this as it is often the case that they can not be fully implemented when time and resources are limited introducing additional risk to the project. A practical approach to...
متن کاملAn Approach for Integrating the Prioritization of Functional and Nonfunctional Requirements
Due to the budgetary deadlines and time to market constraints, it is essential to prioritize software requirements. The outcome of requirements prioritization is an ordering of requirements which need to be considered first during the software development process. To achieve a high quality software system, both functional and nonfunctional requirements must be taken into consideration during th...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2004